Generally described, some systems organize catalogs of items (e.g., goods and/or services) into data structures that reflect individual properties or characteristics of the items, as well as relationships between items. For example, a system may organize a catalog of items as a graph of items and item relationships (e.g., nodes and edges between nodes), and the graph may serve as the basis of an electronic marketplace accessible by end users of the electronic marketplace via a browser application. In this example, the structure of the graph may correspond to a hierarchy of item categories and subcategories, and end users may browse the catalog of items by inspecting items included in these categories and subcategories.
A system configured to maintain a graph of items typically deploys changes to the graph as a set of interdependent changes, whereby implementing one change to the graph may affect or depend on the successful implementation of another change to the graph. Implementing these interdependent changes correctly and without compromising the integrity of the graph is often a non-trivial task because the interdependent changes typically must be applied to the graph in a particular order and at scheduled times. As such, applying some but not all interdependent changes to the graph at a prescheduled time may result in a graph that is inconsistent, broken, or otherwise impaired. As a result, a system utilizing this graph may experience significantly degraded performance, for example, because responding to user requests may be slowed due to the impaired state of the graph.
Some graphs are changed frequently and may include adding, removing, and modifying potentially thousands of items over a short period of time. Administrators of current systems generally desire the ability to implement changes to the graph quickly and without comprising the structure/integrity of the graph. Accordingly, improving the performance of a computing system for managing a graph by reducing the overall complexity and increasing the speed and flexibility of changing the graph remains a technical challenge.